pyenv在linux上安装

JiGeng

创建时间:2024年9月25日 14:01

编辑时间:2024年11月12日 09:07

pyenv安装及下载Python慢的问题,处理报错完美解决。

一。

pyenv 虽然本地使用比直接virtualenv笨重点(但是pyenv是神器,内置了virtualenv并且快捷键丰富),但是当触及多版本Python,pyenv不可或缺。


!!!注意pyenv和pyvenv不是同一个东西,后者只创建虚拟环境!



pyenv在linux上注意:

1.先安装git  : yum install git

然后:curl https://pyenv.run | bash


!!! 安装后留意安装后的提示语!!!

一般是环境变量设置


基本上大同小异!!!以提示语为准!!!


**

通过在终端运行以下命令添加到~/.bashrc,macOS是.bash_profile,系统之间有差异,且自动运行pyenv虚拟环境也有区别,

注意细节。

# Load pyenv automatically by appending
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

# Load pyenv-virtualenv automatically by adding
eval "$(pyenv virtualenv-init -)"


添加完成后要(激活新的环境)

source ~/.bashrc 或者 source /root/.bashrc


注意是不能这样装yum install pyenv !


一切好了,快捷键bin有了pyenv。


成功后查看版本,pyenv --version 别太旧


2.pyenv 安装 3.10.3

!!!问题来了!!!然后开始下载安装,下载的过程巨慢,直接kill掉


2-1.所以呢,我们可以去到网站下载资源,然后放在/root/.pyenv/cache缓存文件夹里面,下载包不要改名,默认是Python-3.10.3.tar.xz ,安装脚本会自动识别。否则跑download只会不停超时

可以到阿里镜像 去下载 https://mirrors.aliyun.com/python-release/source/

2-2.接下来就是要更新yum。  :

sudo yum update

对依赖包的安装和更新:

sudo yum install -y gcc libffi-devel openssl-devel bzip2-devel ncurses-devel readline-devel sqlite-devel


最后还要注意其中一个(特别需要注意的是 lzma 库,确保安装了 xz-devel:)或者注意其他提示报错,

sudo yum install -y xz-devel


最后在执行一次安装即可 

pyenv install 3.10.3




二。检查和全局设置,(全局设置谨慎使用,我们最关键是要在虚拟环境安全使用即可,其他再说)

要配置虚拟环境假设是3.10.3,必须先执行pyenv global 3.10.3  (好处是会自动补全,不会误操作)

执行添加完成后要(激活新的环境)

source ~/.bashrc 或者 source /root/.bashrc

global后系统可能出系统级问题,必须在创建后回调。

通过Python -V 即可查看相关变化


如果输出为3.10.3,这时候创建指定虚拟环境才是有效的,否则是假的.

创建命令:

pyenv virtualenv 3.10.3 v-XX  

进入虚拟环境(快捷键,好方便)

pyenv activate v-xx

检查Python -V 是否为3.10.3

退出:

pyenv deactivate


!!!!最后执行命令:

pyenv global system


(回退,然后再进入虚拟环境检查是否正常!!!)



三。

其他命令,基本上用pyenv自动补全即可,非常简单。

安装失败后要及时删掉无用的versions文件中的Python版本

rm -rf /root/.pyenv/versions/3.X


非必要避免试图自己安装make,后面的bug会烦,尽量按照其脚本执行。提示语会更充分。

我第一次是自己make,但是中途忽略了报错,导致后面有问题。

记住!更新、安装依赖包!


***安装后pip的提速问题

虚拟环境pyenv的下载速度问题

到.pyenv目录的相对应version目录下如v-test环境目录下新建pip.conf

这个可以直接抄阿里云的官方配置:

[global]
index-url=http://mirrors.cloud.aliyuncs.com/pypi/simple/

[install]
trusted-host=mirrors.cloud.aliyuncs.com

修改或新增后deactivate退出虚拟环境然后重新activate进入虚拟环境↑速度起飞~~~


一些文档说在v-test环境目录下新建.pip/pip.conf,多了一层目录并不生效,可能系统间有差异。


PS:阿里速度真快,终于发现 alibaba cloud linux的优势,生态确实牛。 以前习惯centos6~7,但是不维护了。第一次正式用阿里内置系统,很厉害。